OPENQASM 2.0;
include "qelib1.inc";
qreg q[40];
creg c[40];
h q[0];
h q[1];
h q[2];
h q[3];
h q[4];
h q[5];
h q[6];
h q[7];
h q[8];
h q[9];
h q[10];
h q[11];
h q[12];
h q[13];
h q[14];
h q[15];
h q[16];
h q[17];
h q[18];
h q[19];
h q[20];
h q[21];
h q[22];
h q[23];
h q[24];
h q[25];
h q[26];
h q[27];
h q[28];
h q[29];
h q[30];
h q[31];
h q[32];
h q[33];
h q[34];
h q[35];
h q[36];
h q[37];
h q[38];
h q[39];
cx q[6], q[12];
cx q[33], q[38];
cx q[7], q[8];
cx q[30], q[23];
cx q[5], q[3];
cx q[18], q[10];
cx q[34], q[11];
cx q[13], q[14];
cx q[25], q[1];
cx q[2], q[37];
cx q[35], q[17];
cx q[9], q[20];
rx(0.2) q[16];
rx(0.2) q[36];
rz(0.4) q[12];
rz(0.4) q[38];
rz(0.4) q[8];
rz(0.4) q[23];
rz(0.4) q[3];
rz(0.4) q[10];
rz(0.4) q[11];
rz(0.4) q[14];
rz(0.4) q[1];
rz(0.4) q[37];
rz(0.4) q[17];
rz(0.4) q[20];
rx(1) q[16];
rx(1) q[36];
cx q[6], q[12];
cx q[33], q[38];
cx q[7], q[8];
cx q[30], q[23];
cx q[5], q[3];
cx q[18], q[10];
cx q[34], q[11];
cx q[13], q[14];
cx q[25], q[1];
cx q[2], q[37];
cx q[35], q[17];
cx q[9], q[20];
rx(0.2) q[16];
rx(0.2) q[36];
cx q[12], q[28];
cx q[24], q[3];
cx q[38], q[31];
cx q[37], q[5];
cx q[32], q[2];
rx(0.2) q[1];
rx(0.2) q[6];
rx(0.2) q[8];
rx(0.2) q[13];
rx(0.2) q[14];
rx(0.2) q[20];
rx(0.2) q[33];
rx(0.2) q[34];
rz(0.4) q[28];
rz(0.4) q[3];
rz(0.4) q[31];
rz(0.4) q[5];
rz(0.4) q[2];
cx q[13], q[14];
cx q[12], q[28];
cx q[24], q[3];
cx q[38], q[31];
cx q[37], q[5];
cx q[32], q[2];
rz(1.2) q[14];
cx q[25], q[24];
cx q[4], q[31];
cx q[27], q[38];
cx q[0], q[2];
cx q[5], q[23];
cx q[10], q[28];
rx(0.2) q[3];
rx(0.2) q[12];
cx q[13], q[14];
rz(0.4) q[24];
rz(0.4) q[31];
rz(0.4) q[38];
rz(0.4) q[2];
rz(0.4) q[23];
rz(0.4) q[28];
cx q[6], q[12];
rx(1) q[13];
rx(1) q[14];
cx q[25], q[24];
cx q[4], q[31];
cx q[27], q[38];
cx q[0], q[2];
cx q[5], q[23];
cx q[10], q[28];
rz(1.2) q[12];
cx q[13], q[14];
cx q[25], q[22];
cx q[2], q[39];
cx q[37], q[24];
cx q[17], q[38];
cx q[4], q[32];
cx q[7], q[0];
cx q[23], q[11];
cx q[27], q[30];
cx q[5], q[18];
rx(0.2) q[31];
cx q[6], q[12];
rz(0.4) q[14];
rz(0.4) q[22];
rz(0.4) q[39];
rz(0.4) q[24];
rz(0.4) q[38];
rz(0.4) q[32];
rz(0.4) q[0];
rz(0.4) q[11];
rz(0.4) q[30];
rz(0.4) q[18];
rx(1) q[6];
cx q[13], q[14];
cx q[25], q[22];
cx q[2], q[39];
cx q[37], q[24];
cx q[17], q[38];
cx q[4], q[32];
cx q[7], q[0];
cx q[23], q[11];
cx q[27], q[30];
cx q[5], q[18];
rx(0.2) q[13];
rx(0.2) q[14];
cx q[35], q[22];
cx q[19], q[2];
cx q[15], q[7];
cx q[26], q[0];
cx q[27], q[21];
cx q[39], q[28];
cx q[17], q[23];
rx(0.2) q[11];
rx(0.2) q[18];
rx(0.2) q[25];
rx(0.2) q[30];
rx(0.2) q[32];
rx(0.2) q[37];
rx(0.2) q[38];
rz(0.4) q[22];
rz(0.4) q[2];
rz(0.4) q[7];
rz(0.4) q[0];
rz(0.4) q[21];
rz(0.4) q[28];
rz(0.4) q[23];
cx q[33], q[38];
cx q[34], q[11];
cx q[25], q[1];
cx q[35], q[22];
cx q[19], q[2];
cx q[15], q[7];
cx q[26], q[0];
cx q[27], q[21];
cx q[39], q[28];
cx q[17], q[23];
rz(1.2) q[38];
rz(1.2) q[11];
rz(1.2) q[1];
cx q[7], q[4];
cx q[2], q[29];
cx q[10], q[23];
rx(0.2) q[0];
rx(0.2) q[15];
rx(0.2) q[17];
rx(0.2) q[19];
rx(0.2) q[21];
rx(0.2) q[22];
rx(0.2) q[26];
rx(0.2) q[28];
rx(0.2) q[35];
rx(0.2) q[39];
cx q[33], q[38];
cx q[34], q[11];
cx q[25], q[1];
rz(0.4) q[4];
rz(0.4) q[29];
rz(0.4) q[23];
cx q[12], q[28];
cx q[38], q[31];
cx q[35], q[17];
rx(1) q[1];
rx(1) q[33];
rx(1) q[34];
cx q[7], q[4];
cx q[2], q[29];
cx q[10], q[23];
rz(1.2) q[28];
rz(1.2) q[31];
rz(1.2) q[17];
cx q[4], q[24];
cx q[5], q[29];
rx(0.2) q[2];
rx(0.2) q[7];
rx(0.2) q[10];
rx(0.2) q[23];
cx q[12], q[28];
cx q[38], q[31];
cx q[35], q[17];
rz(0.4) q[24];
rz(0.4) q[29];
cx q[7], q[8];
cx q[30], q[23];
cx q[18], q[10];
cx q[2], q[37];
rx(1) q[12];
cx q[4], q[24];
cx q[5], q[29];
rz(1.2) q[8];
rz(1.2) q[23];
rz(1.2) q[10];
rz(1.2) q[37];
cx q[6], q[12];
cx q[9], q[24];
rx(0.2) q[4];
rx(0.2) q[5];
rx(0.2) q[29];
cx q[7], q[8];
cx q[30], q[23];
cx q[18], q[10];
cx q[2], q[37];
rz(0.4) q[12];
rz(0.4) q[24];
cx q[5], q[3];
cx q[4], q[31];
cx q[32], q[2];
cx q[10], q[28];
rx(1) q[8];
cx q[6], q[12];
cx q[9], q[24];
rz(1.2) q[3];
rz(1.2) q[31];
rz(1.2) q[2];
rz(1.2) q[28];
rx(0.2) q[6];
cx q[24], q[27];
rx(0.2) q[9];
cx q[5], q[3];
cx q[4], q[31];
cx q[32], q[2];
cx q[10], q[28];
rz(0.4) q[27];
cx q[37], q[5];
cx q[0], q[2];
cx q[9], q[20];
cx q[4], q[32];
rx(1) q[31];
cx q[24], q[27];
rz(1.2) q[5];
rz(1.2) q[2];
rz(1.2) q[20];
rz(1.2) q[32];
rx(0.2) q[24];
rx(0.2) q[27];
cx q[37], q[5];
cx q[0], q[2];
cx q[9], q[20];
cx q[4], q[32];
cx q[24], q[3];
cx q[27], q[38];
cx q[2], q[39];
cx q[5], q[23];
cx q[7], q[0];
rx(1) q[20];
rx(1) q[32];
rz(1.2) q[3];
rz(1.2) q[38];
rz(1.2) q[39];
rz(1.2) q[23];
rz(1.2) q[0];
cx q[24], q[3];
cx q[27], q[38];
cx q[2], q[39];
cx q[5], q[23];
cx q[7], q[0];
cx q[25], q[24];
cx q[17], q[38];
cx q[19], q[2];
cx q[23], q[11];
cx q[27], q[30];
cx q[15], q[7];
cx q[26], q[0];
cx q[39], q[28];
cx q[5], q[18];
rx(1) q[3];
rz(1.2) q[24];
rz(1.2) q[38];
rz(1.2) q[2];
rz(1.2) q[11];
rz(1.2) q[30];
rz(1.2) q[7];
rz(1.2) q[0];
rz(1.2) q[28];
rz(1.2) q[18];
cx q[25], q[24];
cx q[17], q[38];
cx q[19], q[2];
cx q[23], q[11];
cx q[27], q[30];
cx q[15], q[7];
cx q[26], q[0];
cx q[39], q[28];
cx q[5], q[18];
cx q[25], q[22];
cx q[37], q[24];
cx q[7], q[4];
cx q[27], q[21];
cx q[2], q[29];
cx q[17], q[23];
rx(1) q[0];
rx(1) q[11];
rx(1) q[15];
rx(1) q[18];
rx(1) q[19];
rx(1) q[26];
rx(1) q[28];
rx(1) q[30];
rx(1) q[38];
rx(1) q[39];
rz(1.2) q[22];
rz(1.2) q[24];
rz(1.2) q[4];
rz(1.2) q[21];
rz(1.2) q[29];
rz(1.2) q[23];
cx q[12], q[28];
cx q[33], q[38];
cx q[34], q[11];
cx q[25], q[22];
cx q[37], q[24];
cx q[7], q[4];
cx q[27], q[21];
cx q[2], q[29];
cx q[17], q[23];
rz(0.4) q[28];
rz(0.4) q[38];
rz(0.4) q[11];
cx q[35], q[22];
cx q[4], q[24];
cx q[5], q[29];
cx q[10], q[23];
rx(1) q[2];
rx(1) q[7];
rx(1) q[17];
rx(1) q[21];
rx(1) q[25];
rx(1) q[37];
cx q[12], q[28];
cx q[33], q[38];
cx q[34], q[11];
rz(1.2) q[22];
rz(1.2) q[24];
rz(1.2) q[29];
rz(1.2) q[23];
cx q[7], q[8];
cx q[38], q[31];
cx q[25], q[1];
cx q[2], q[37];
rx(0.2) q[12];
rx(0.2) q[33];
rx(0.2) q[34];
cx q[35], q[22];
cx q[4], q[24];
cx q[5], q[29];
cx q[10], q[23];
rz(0.4) q[8];
rz(0.4) q[31];
rz(0.4) q[1];
rz(0.4) q[37];
cx q[9], q[24];
rx(1) q[4];
rx(1) q[5];
rx(1) q[10];
rx(1) q[22];
rx(1) q[23];
rx(1) q[29];
rx(1) q[35];
cx q[7], q[8];
cx q[38], q[31];
cx q[25], q[1];
cx q[2], q[37];
rz(1.2) q[24];
cx q[30], q[23];
cx q[5], q[3];
cx q[18], q[10];
cx q[4], q[31];
cx q[35], q[17];
cx q[32], q[2];
rx(0.2) q[1];
rx(0.2) q[8];
cx q[9], q[24];
rz(0.4) q[23];
rz(0.4) q[3];
rz(0.4) q[10];
rz(0.4) q[31];
rz(0.4) q[17];
rz(0.4) q[2];
cx q[24], q[27];
rx(1) q[9];
cx q[30], q[23];
cx q[5], q[3];
cx q[18], q[10];
cx q[4], q[31];
cx q[35], q[17];
cx q[32], q[2];
rz(1.2) q[27];
cx q[37], q[5];
cx q[0], q[2];
cx q[9], q[20];
cx q[10], q[28];
cx q[4], q[32];
rx(0.2) q[31];
cx q[24], q[27];
rz(0.4) q[5];
rz(0.4) q[2];
rz(0.4) q[20];
rz(0.4) q[28];
rz(0.4) q[32];
rx(1) q[24];
rx(1) q[27];
cx q[37], q[5];
cx q[0], q[2];
cx q[9], q[20];
cx q[10], q[28];
cx q[4], q[32];
cx q[24], q[3];
cx q[27], q[38];
cx q[2], q[39];
cx q[5], q[23];
cx q[7], q[0];
rx(0.2) q[20];
rx(0.2) q[32];
rz(0.4) q[3];
rz(0.4) q[38];
rz(0.4) q[39];
rz(0.4) q[23];
rz(0.4) q[0];
cx q[24], q[3];
cx q[27], q[38];
cx q[2], q[39];
cx q[5], q[23];
cx q[7], q[0];
cx q[25], q[24];
cx q[17], q[38];
cx q[19], q[2];
cx q[23], q[11];
cx q[27], q[30];
cx q[15], q[7];
cx q[26], q[0];
cx q[39], q[28];
cx q[5], q[18];
rx(0.2) q[3];
rz(0.4) q[24];
rz(0.4) q[38];
rz(0.4) q[2];
rz(0.4) q[11];
rz(0.4) q[30];
rz(0.4) q[7];
rz(0.4) q[0];
rz(0.4) q[28];
rz(0.4) q[18];
cx q[25], q[24];
cx q[17], q[38];
cx q[19], q[2];
cx q[23], q[11];
cx q[27], q[30];
cx q[15], q[7];
cx q[26], q[0];
cx q[39], q[28];
cx q[5], q[18];
cx q[25], q[22];
cx q[37], q[24];
cx q[7], q[4];
cx q[27], q[21];
cx q[2], q[29];
cx q[17], q[23];
rx(0.2) q[0];
rx(0.2) q[11];
rx(0.2) q[15];
rx(0.2) q[18];
rx(0.2) q[19];
rx(0.2) q[26];
rx(0.2) q[28];
rx(0.2) q[30];
rx(0.2) q[38];
rx(0.2) q[39];
rz(0.4) q[22];
rz(0.4) q[24];
rz(0.4) q[4];
rz(0.4) q[21];
rz(0.4) q[29];
rz(0.4) q[23];
cx q[25], q[22];
cx q[37], q[24];
cx q[7], q[4];
cx q[27], q[21];
cx q[2], q[29];
cx q[17], q[23];
cx q[35], q[22];
cx q[4], q[24];
cx q[5], q[29];
cx q[10], q[23];
rx(0.2) q[2];
rx(0.2) q[7];
rx(0.2) q[17];
rx(0.2) q[21];
rx(0.2) q[25];
rx(0.2) q[37];
rz(0.4) q[22];
rz(0.4) q[24];
rz(0.4) q[29];
rz(0.4) q[23];
cx q[35], q[22];
cx q[4], q[24];
cx q[5], q[29];
cx q[10], q[23];
cx q[9], q[24];
rx(0.2) q[4];
rx(0.2) q[5];
rx(0.2) q[10];
rx(0.2) q[22];
rx(0.2) q[23];
rx(0.2) q[29];
rx(0.2) q[35];
rz(0.4) q[24];
cx q[9], q[24];
cx q[24], q[27];
rx(0.2) q[9];
rz(0.4) q[27];
cx q[24], q[27];
rx(0.2) q[24];
rx(0.2) q[27];
